从 CloudTrail Lake 迁移到 Amazon CloudWatch
概述
本指南提供了从 AWS CloudTrail Lake 迁移到 Amazon CloudWatch 作为 CloudTrail 事件分析主要目标的分步方法。它详细介绍了结构化的三阶段迁移过程——导出历史数据、通过遥测启用规则启用新的 CloudTrail 数据摄取,以及设置跨账户/跨区域集中化——从而帮助您将 CloudTrail 活动与其他运维和安全遥测数据统一到 CloudWatch Unified Data Store 中。本指南还涵盖了成本估算、从 CloudTrail Lake SQL 到 CloudWatch Logs Insights 的查询转换、集中化定价优化、日志组的安全最佳实践,以及构建近实时安全可视化 dashboard。
为什么要迁移?
当前使用 CloudTrail Lake 的组织面临一个常见挑战:CloudTrail 数据与其他运维和安全遥测数据隔离,导致事故调查缓慢且需要在多个工具和查询语言之间来回切换。Amazon CloudWatch Unified Data Store 通过提供集中式存储库来解决这个问题,将 CloudTrail 活动与 VPC Flow Logs、AWS WAF logs、应用程序日志和第三方安全数据整合在一起——通过 CloudWatch Logs Insights 和兼容 Apache Iceberg 的工具(如 Amazon Athena 和 Amazon Redshift)实现关联分析。
迁移的主要优势
- 统一遥测:在单一查询界面中通过 CloudWatch unified data store 关联跨 AWS 服务(CloudTrail、VPC Flow Logs、WAF、Route 53、EKS、NLB 等)、第三方来源(CrowdStrike、SentinelOne、Okta、Palo Alto Networks 等)和自定义应用程序日志的数据。
- 自动 schema 发现:CloudWatch 自动发现并索引 CloudTrail 字段,提供默认 facets(如
@data_source_name)用于动态日志组发现。更多信息请参阅数据源发现和管理。 - 不依赖日志组名称:使用
SOURCE logGroups() | filterIndex @data_source_name in ["aws_cloudtrail"]查询所有 CloudTrail 数据,无需依赖日志组命名。 - 原生增强:使用 CloudWatch Logs Transformation 在数据摄取时添 加安全上下文、合规标签和环境标签,无需自定义 Lambda 函数。
- 跨账户/跨区域集中化:将所有账户和区域的 CloudTrail 数据整合到单一目标中,用于安全、合规和事故响应。更多信息请参阅跨账户跨区域日志集中化。
- 一个平台,更多价值:CloudWatch unified data store 超越了独立查询服务,将 AWS 日志、第三方安全来源和自定义应用程序数据统一在单一平台中,内置标准化和跨源关联功能。
三阶段迁移方法
迁移遵循结构化的三阶段方法:

估算迁移成本
从 CloudTrail Lake 迁移到 CloudWatch 后,新的 CloudTrail 事件将持续直接摄取到 CloudWatch Logs 中。了解此迁移的成本影响对于预算规划和成本优化非常重要。
要估算您预计的每月 CloudWatch Logs 成本,请在 AWS Cost Explorer 中查看您当前的 CloudTrail Lake 使用情况,筛选 CloudTrail 服务并按使用类型分组。参阅使用 AWS Cost Explorer 查看 CloudTrail 成本和使用情况来确定您的事件数据存储的 CloudTrail Lake 使用类型(如摄取字节数)。Cost Explorer 以 GB 为单位显示摄取值,您可以使用最新的 CloudWatch 定价来估算 CloudTrail 交付和 CloudWatch Logs 摄取的成本。
注意:此估算仅涵盖摄取和交付成本,不包括与 CloudWatch Logs 相关的任何额外成本,如存储和查询。
阶段 1 — 从 CloudTrail Lake 导出历史数据到 CloudWatch
将您的历史 CloudTrail Lake 数据导出到 CloudWatch 可确保审计跟踪的连续性,并实现跨历史和新事件的统一查询。此阶段专注于将数据从现有的事件数据存储(EDS)移动到 CloudWatch Logs。